package com.dl698.asn1.axdr;

import com.dl698.util.ReverseByteArrayInputStream;
import com.dl698.util.ReverseByteArrayOutputStream;

/**
 * AXDR类型接口
 * 定义了编码和解码的基本方法
 * 
 * @author wind
 * @version 1.1.1
 */
public interface AxdrType {

    /**
     * 编码方法
     * 将当前对象编码到输出流中
     * 
     * @param output 输出流
     * @return 编码的字节数
     */
    int encode(ReverseByteArrayOutputStream output);

    /**
     * 解码方法
     * 从输入流中解码数据
     * 
     * @param input 输入流
     * @return 解码的字节数
     */
    int decode(ReverseByteArrayInputStream input);
}